YP V0.98_BETA_1 (Wed 27-Aug-97) by Smack/Infect! WARNING: This YP version is my very first try to support CyberGfx. I don't have a CyberGfx system here so YOU are going to run virginal code! This fact is actually very unpleasant to me since there could be some obvious bugs which have had no chance to show up yet. BUGREPORTS: Please report any bugs (or what you might think that doesn't work right), but please don't write "Hey, your program crashes!" or something like that. Explain extactly what hardware, software and what kind of YAFA anim you used, and if possible send me some debugging output from YP itself and maybe from some other tools like Enforcer, Mungwall etc. I'm afraid this kind of "remote debugging" is going to be very nasty but I have no other chance. :-( Send bugreports to: epgbd@cluster.urz.uni-halle.de (attended about twice per week) USAGE: The new feature in this YP version is the explicit CyberGfx support. YP should now also run on non-AGA systems with CyberGfx installed. It works like this: -you need a Public Screen in a TrueColor CyberGfx screenmode (15, 16 or 24 bits deep). I guess 24 bits will be the fastest but you have to test this for yourself. -start YP in "pubscreen-window" mode like this: "yp_beta -ps XYZ test.yafa" (XYZ is the name of the above mentioned Public Screen; if the name is not correct then YP uses the Default Public Screen - usually Workbench) YAFA anims with PLANAR frames are currently NOT SUPPORTED in this mode!! Please tell me if this works as I think it should do, and also tell me about the playback speed so that I can see if all this work is really worth it... TECH STUFF: After reading some CyberGfx doc files I decided to use WritePixelArray() which is also used in some example code I found. Since YAFA anims can have a depth of 1-8, HAM6, HAM8, 15 or 24 bits I wrote some ASM routines that convert all these different YAFA pixel formats to 24 bits RGB. Maybe there is some other more elegant way to do this but I don't know it. WritePixelArray() can write only to TrueColor RastPorts when the input is RECTFMT_RGB, so YP requires a deep screen for the window. The advantage of this method is that the missing double buffering should be nearly invisible, even with YAFA anims that have palette-per-frame. The major disadvantage is probably speed... The timing is now done with CIA-A timer A (Level2 IRQ) because I read that VBlank IRQ doesn't work with CyberGfx. The base frequency of the timer is 50Hz so the playback speed is like on a PAL screen.